/**
 * 
 * @brief  bsp_interrupt.c
 * @param  None
 * 
 * @author xhq
 * @date   2024/12/06
 * 
 */
/* include */
#include "bsp_interrupt.h"

/* define */
#define BSP_INTERRUPT_DEBUG       0

/* typedef */

/* global varibles */

/* function */
// static void signal_handle(int32_t sig, siginfo_t *info, void *context);


/**
 * @brief interrupt模块初始化
 * 
 * @param None ：
 * 
 * @return uint32_t ：0：正常，非0：错误代码
 * 
 * @note：
 */
// uint32_t bsp_interrupt_init(void)
// {
//     struct sigaction sigIntHandler = {0};

//     sigIntHandler.sa_handler = (void *)signal_handle;      //信号处理函数
//     sigemptyset(&sigIntHandler.sa_mask);
//     sigIntHandler.sa_flags = SA_SIGINFO;

//     sigaction(SIGUSR1, &sigIntHandler, NULL);      //信号绑定相关处理函数
// }
/**
 * @brief signal handler
 * 
 * @param None ：
 * 
 * @return uint32_t ：0：正常，非0：错误代码
 * 
 * @note：
 */
// static void signal_handle(int32_t sig, siginfo_t *info, void *context)
// {
//     /* mipi数据中断信号 */
//     if (sig == SA_SIGINFO) 
//     {
//         g_fram_raw_data_info.intr_cycle_count++;

//         /* */
//         printf("signo = %d, code = %d, errno = %d \n",
//                 info->si_signo,
//                 info->si_code, 
//                 info->si_errno);	

//         /* 每 RAW_DATA_FRAM_NUM 个中断处理一次， 每个fram间隔17ms */
//         if (g_fram_raw_data_info.intr_cycle_count % RAW_DATA_FRAM_NUM == 0)
//         {
//             g_fram_raw_data_info.intr_cycle_count = 0;
//             /* 等待中断释放信号量 */
//             sem_post(&g_data_pro_semaphore);
//         }
//     }
// }